//思路：回文判断+单调性判断（这样就只用判断一边）
public class 山 {
    public static void main(String[] args) {
        int n = 0;
        for(int i=2022;i<=2022222022;i++) {
            if(huiwen(i)&&dandiao(i)) {
                n++;
            }
        }
        System.out.print(n);
    }
    //判断单调性
    private static boolean dandiao(int n) {
        int[] a = new int[10];
        int i=0;
        while(n>0) {
            a[i++] = n%10;
            n =n/10;
        }
        int l=i/2;
        for(int j=1;j<=l;j++) {
            if(a[j]<a[j-1]) {
                return false;
            }
        }
        return true;
    }

    //回文判断：思路前后指针遍历，看是不是一样
    public static boolean huiwen(int n) {
        int[] a = new int[10];
        int i =0;
        //把数字放入数组
        while(n>0) {
            a[i++] = n%10;
            n =n/10;
        }
        int l=0,r=i-1;
        while(l<r) {
            if(a[l]!=a[r]) {
                return false;
            }
            l++;
            r--;
        }
        return true;
    }
}
